#! /bin/bash

# (c) Thomas Lange, 2001-2015, lange@debian.org
# (c) Michael Goetze, 2010-2011, mgoetze@mgoetze.net

error=0; trap 'error=$(($?>$error?$?:$error))' ERR # save maximum error code

# a list of modules which are loaded at boot time
for module in $MODULESLIST; do
    ainsl -a /etc/modules "^$module$"
done

fcopy -Mv /etc/hostname || echo $HOSTNAME > $target/etc/hostname
ainsl -a /etc/mailname ${HOSTNAME}
if [ ! -e $target/etc/adjtime ]; then
    printf "0.0 0 0.0\n0\nUTC" > $target/etc/adjtime
fi
if [ "$UTC" = "yes" ]; then
    sed -i -e 's:^LOCAL$:UTC:' $target/etc/adjtime
else
    sed -i -e 's:^UTC$:LOCAL:' $target/etc/adjtime
fi

#enable xfs zfs
ainsl -a /etc/modules-load.d/xfs.conf 'xfs'
ainsl -a /etc/modules-load.d/zfs.conf 'zfs'

# enable linuxlogo
#if [ -f $target/etc/inittab ]; then
#    sed -i -e 's#/sbin/getty 38400#/sbin/getty -f /etc/issue.linuxlogo 38400#' ${target}/etc/inittab
#elif [ -f $target/lib/systemd/system/getty@.service ]; then
    #sed -i -e 's#sbin/agetty --noclear#sbin/agetty -f /etc/issue.linuxlogo --noclear#' $target/lib/systemd/system/getty@.service
#    fcopy /etc/systemd/system/getty.target.wants/getty@tty1.service
#    unlink $target/etc/systemd/system/getty.target.wants/getty\@tty1.service.pre_fcopy
#fi

fcopy /etc/systemd/system.conf

if [ ! -f $target/etc/machine-id -a -f $target/bin/systemd-machine-id-setup ]; then
    $ROOTCMD systemd-machine-id-setup
fi

ln -fs /proc/mounts $target/etc/mtab

rm -f $target/etc/dpkg/dpkg.cfg.d/fai

if [ $FAI_ACTION = "install" -o $FAI_ACTION = "dirinstall" ] ; then
  [ -f /etc/fai/fai.conf ] && cp /etc/fai/fai.conf $target/etc/fai/fai.conf
fi

ainsl -a /etc/fai/fai.conf "FAI_CONFIG_SRC=$FAI_CONFIG_SRC"

fcopy -Miv /etc/fai/fai.conf
fcopy -iv /etc/rc.local
fcopy -Miv /etc/securetty
sed -i "s/net.ipv4.tcp_congestion_control.*$/net.ipv4.tcp_congestion_control=dctcp/" $target/etc/sysctl.conf
#sed -i "s/#kernel.unprivileged_bpf_disabled/kernel.unprivileged_bpf_disabled/" $target/etc/sysctl.conf
sed -i "s/#net.ipv4.tcp_fwmark_accept/net.ipv4.tcp_fwmark_accept/" $target/etc/sysctl.conf
sed -i "s/#net.ipv4.fwmark_reflect/net.ipv4.fwmark_reflect/" $target/etc/sysctl.conf

#time setting
#sed -i s/NTPDATE_USE_NTP_CONF=yes/NTPDATE_USE_NTP_CONF=no/ $target/etc/default/ntpdate
[ -n "$NTPSRVS" ] && sed -i /#Servers/a\Servers="$NTPSRVS" $target/etc/systemd/timesyncd.conf
#$ROOTCMD systemctl start systemd-timedated
mkdir -p $target/etc/systemd/system/sysinit.target.wants
ln -sf /lib/systemd/system/systemd-timesyncd.service $target/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service
ln -s /dev/null $target/etc/systemd/system/bluetooth.service
unlink $target/lib/systemd/system/ctrl-alt-del.target
#unlink $target/etc/systemd/system/multi-user.target.wants/smartd.service
unlink $target/etc/systemd/system/multi-user.target.wants/lm-sensors.service
#$ROOTCMD timedatectl set-ntp true
sed -i '/# The named pipe \/dev\/xconsole/,$d' $target/etc/rsyslog.conf
#sed -i 's/^ENABLED.*$/ENABLED="0"/' $target/etc/default/irqbalance
sed -i 's/^# auth       required   pam_wheel.so$/auth       required   pam_wheel.so group=adm use_uid/' $target/etc/pam.d/su
fcopy -iM /etc/apt-fast.conf
fcopy -iM /usr/bin/apt-fast
chmod +x $target/usr/bin/apt-fast
exit $error
